/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.opgea.token.service;

import java.util.List;

import com.opgea.token.web.dto.TokenDetailsDTO;

/**
 * 
 * @author Ramesh
 */
public interface TokenDetailsService {

    public TokenDetailsDTO create(TokenDetailsDTO tokenDetailsDTO);

    public TokenDetailsDTO update(TokenDetailsDTO tokenDetailsDTO);

    public TokenDetailsDTO find(Long tokenDetailsId);

    public TokenDetailsDTO findByTokenId(Long tokenId);

    public List<TokenDetailsDTO> findAll();

    public List<TokenDetailsDTO> findAllByCompanyId(Long companyId);

    public List<TokenDetailsDTO> findAllByDestinationId(Long companyId,
	    Long destinationId);

    public Integer getNextTokenNumber(Long companyId, String dateString);

    public List<TokenDetailsDTO> searchTokens(Long companyId, String searchKey,
	    String tokenDate);
}
